<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui">

<p:outputPanel id="idpanelexamenteorico2">
    <h:panelGrid columns="4">
        <p:outputLabel value="Fecha examen" for="idfechaexamen2"/>
        <p:outputPanel>
            <p:calendar mode="popup" navigator="true" showButtonPanel="true" showOn="button" required="true"
                        requiredMessage='El campo "Fecha examen" es requerido' id="idfechaexamen2"
                        value="#{dgtPracticoController.practicoExam.fechaexamen}"/>
            <p:watermark for="idfechaexamen2" value="dd/mm/aa"/>
        </p:outputPanel>
        <p:outputLabel value="Alumno" for="idExamPracticoAlumno"/>
        <p:outputPanel id="idExamPracticoAlumnoPanel">
            <p:inputText size="40" id="idExamPracticoAlumno" value="#{dgtPracticoController.searchParamAlumno2}"/>
            <p:watermark for="idExamPracticoAlumno" value="Digite Nif o nombre y click en el icono buscar"/>
            <p:commandButton icon="search" process="@this idExamPracticoAlumno"
                             update="idExamPracticoAlumnoTable idExamPracticoAlumnoDialog"
                             actionListener="#{dgtPracticoController.searchPracticoAlumno}"
                    oncomplete="varExamPracticoAlumnoDialog.show();"/>
        </p:outputPanel>
        <p:outputLabel value="Permiso" for="idpermiso2"/>
        <p:selectOneMenu style="width: 70px" id="idpermiso2" required="true"
                         requiredMessage='El campo "Permiso" es requerido'
                         value="#{dgtPracticoController.practicoExam.permiso}">
            <f:selectItem itemValue="AM" itemLabel="AM"/>
            <f:selectItem itemValue="A1" itemLabel="A1"/>
            <f:selectItem itemValue="A2" itemLabel="A2"/>
            <f:selectItem itemValue="A" itemLabel="A"/>
            <f:selectItem itemValue="B" itemLabel="B"/>
            <f:selectItem itemValue="BTP" itemLabel="BTP"/>
            <f:selectItem itemValue="B+E" itemLabel="B+E"/>
            <f:selectItem itemValue="C1" itemLabel="C1"/>
            <f:selectItem itemValue="C1+E" itemLabel="C1+E"/>
            <f:selectItem itemValue="C" itemLabel="C"/>
            <f:selectItem itemValue="C+E" itemLabel="C+E"/>
            <f:selectItem itemValue="D1" itemLabel="D1"/>
            <f:selectItem itemValue="D1+E" itemLabel="D1+E"/>
            <f:selectItem itemValue="D" itemLabel="D"/>
            <f:selectItem itemValue="D+E" itemLabel="D+E"/>
            <f:selectItem itemValue="E" itemLabel="E"/>
        </p:selectOneMenu>
        <p:outputLabel value="Prueba" for="idPrueba2"/>
        <p:selectOneMenu style="width: 70px" id="idPrueba2" required="true"
                         requiredMessage='El campo "Prueba" es requerido'
                         value="#{dgtPracticoController.practicoExam.prueba}">
            <f:selectItem itemValue="" itemLabel="Seleccione"/>
            <f:selectItem itemValue="Mecanico" itemLabel="Mecanico"/>
            <f:selectItem itemValue="Especifico" itemLabel="Especifico"/>
            <f:selectItem itemValue="Circuito abierto" itemLabel="Circuito abierto"/>
            <f:selectItem itemValue="Circuito cerrado" itemLabel="Circuito cerrado"/>
        </p:selectOneMenu>
        <p:outputLabel value="Solicitud" for="idsolicitud2"/>
        <p:inputMask maxlength="3" mask="9?9" id="idsolicitud2" required="true"
                     requiredMessage='El campo "Solicitud" es requerido' value="#{dgtPracticoController.practicoExam.solicitud}"/>
        <p:outputLabel value="Convocatoria" for="idconvocatoria2"/>
        <p:inputMask maxlength="3" mask="9?9" id="idconvocatoria2" required="true"
                     requiredMessage='El campo "Convocatoria" es requerido' value="#{dgtPracticoController.practicoExam.convocatoria}"/>

    </h:panelGrid>
    <h:panelGrid columns="2">
        <p:outputLabel for="idPracticoExamProfesor" value="Profesor:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;"/>
        <p:outputPanel>
            <p:inputText size="80" value="#{dgtPracticoController.practicoExamProfesor}" id="idPracticoExamProfesor" />
            <p:watermark for="idPracticoExamProfesor" value="Introduzca N.I.F. o Nombre" />
            <p:commandButton process="@this idPracticoExamProfesor"
                             update="idTableExamPracticoProfesor idDialogExamPracticoProfessor"
                             oncomplete="dialogExamPracticoProfesor.show()"
                             actionListener="#{dgtPracticoController.searchExamProfesor}" icon="search"/>
        </p:outputPanel>

        <p:outputLabel for="idPracticoExamVehiculo" value="Vehiculo:"/>
        <p:outputPanel>
            <p:inputText id="idPracticoExamVehiculo" value="#{dgtPracticoController.practicoExam.vehiculo.matricula}"/>
            <p:commandButton process="@this idPracticoExamVehiculo" update="idTablePracticoVehiculo idDialogPracticoVehiculo"
                             actionListener="#{dgtPracticoController.searchVehiculo()}" icon="search"
                             oncomplete="dialogPracticoVehiculo.show()"
                    />
        </p:outputPanel>


        <p:commandButton value="Guardar" process="@this idpanelexamenteorico2"
                         update="idpanelexamenteorico2 idTableExamenPratico"
                         actionListener='#{dgtPracticoController.savePractico}'/>
        <p:commandButton update="idpanelexamenteorico2 idTableExamenPratico" process="@none"
                value="Cancelar" actionListener="#{dgtPracticoController.init()}"/>
</h:panelGrid>
</p:outputPanel>



    <p:panel header="Lista examen practico">
        <h:panelGrid id="idPanelExamenPractico" columns="1">
            <p:outputPanel>
                <p:outputLabel for="idPracticoProfessor" value="Profesor:"/>
                <p:outputPanel>
                    <p:inputText size="80" value="#{dgtPracticoController.practicoSearchForm.professorStr}" id="idPracticoProfessor"/>
                    <p:watermark for="idPracticoProfessor" value="Introduzca N.I.F. o Nombre"/>
                    <p:commandButton process="@this idPracticoProfessor"
                                     update="idDialogSearchPracticoProfessor idTableSearchPracticoProfesor"
                                     oncomplete="dialogSearchPracticoProfesor.show()"
                                     actionListener="#{dgtPracticoController.searchProfesor}" icon="search"/>
                </p:outputPanel>
            </p:outputPanel>
            <p:outputPanel>
                <h:outputLabel value="Desde:"/>
                <p:outputPanel>
                    <p:calendar mode="popup" navigator="true" showButtonPanel="true" showOn="button" id="idfechadesde2"
                                value="#{dgtPracticoController.practicoSearchForm.fechaDesde}"/>
                    <p:watermark for="idfechadesde2" value="dd/mm/aa"/>
                </p:outputPanel>
                <p:outputPanel>
                    <h:outputLabel value="Hasta:"/>
                    <p:calendar mode="popup" navigator="true" showButtonPanel="true" showOn="button" id="idfechahasta2"
                                value="#{dgtPracticoController.practicoSearchForm.fechaHasta}"/>
                    <p:watermark for="idfechahasta2" value="dd/mm/aa"/>
                </p:outputPanel>
                <p:commandButton value="Buscar" process="@this idfechadesde2 idfechahasta2" update="idTableExamenPratico"
                                 actionListener="#{dgtPracticoController.searchPratico}"/>

                <p:commandButton process="@this"
                                 immediate="true" id="practicoDownloadLink"
                                 actionListener="#{dgtPracticoController.printPratico}"
                                 value="Imprimir" ajax="false"
                                 icon="ui-icon-circle-arrow-s"
                                 onclick="PrimeFaces.monitorDownload(start, stop)">
                    <p:fileDownload value="#{dgtPracticoController.dc}"/>
                </p:commandButton>
            </p:outputPanel>
        </h:panelGrid>


        <p:dataTable id="idTableExamenPratico" paginator="true" rows="5"
                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                     rowsPerPageTemplate="5,10,15" value="#{dgtPracticoController.examenList2}" var="examenlistvar2">
            <p:column headerText="Fecha examen">
                #{dgtPracticoController.formatFecha(examenlistvar2.fechaexamen)}
            </p:column>
            <p:column headerText="Alumno">
                #{examenlistvar2.alumno.nombres}
                #{examenlistvar2.alumno.apellidos}
            </p:column>
            <p:column headerText="Permiso">
                #{examenlistvar2.permiso}
            </p:column>
            <p:column headerText="Solicitud">
                #{examenlistvar2.solicitud}
            </p:column>
            <p:column headerText="Convocatoria">
                #{examenlistvar2.convocatoria}
            </p:column>
            <p:column headerText="Conv total">
                #{examenlistvar2.convocatoria+examenlistvar2.solicitud}
            </p:column>
            <p:column headerText="Prueba">
                #{examenlistvar2.prueba}
            </p:column>
            <p:column headerText="Profesor">
                #{examenlistvar2.profesor.nombres}
            </p:column>

        </p:dataTable>
    </p:panel>

<p:dialog id="idDialogSearchPracticoProfessor"
          widgetVar="dialogSearchPracticoProfesor"
          minWidth="500"
          visible="false">
    <p:dataTable lazy="true" paginator="true" rows="5"
                 paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                 id='idTableSearchPracticoProfesor' value="#{dgtPracticoController.practicoProfesorList}" var="profesorvar">
        <p:column headerText="Nif">
            #{profesorvar.nif}
        </p:column>
        <p:column headerText="Nombres">
            #{profesorvar.nombres}
        </p:column>
        <p:column headerText="Apellidos">
            #{profesorvar.apellidos}
        </p:column>
        <p:column headerText="Telefono">
            #{profesorvar.telefono}
        </p:column>
        <p:column headerText="Accion">
            <p:commandLink value="Seleccionar"
                           onclick="dialogSearchPracticoProfesor.hide();"
                           process="@this"
                           actionListener="#{dgtPracticoController.onRowSelectSearchProfesor(profesorvar)}"
                           update=":formgdt:tabViewgdt:idPracticoProfessor"  >
            </p:commandLink>
        </p:column>
    </p:dataTable>
</p:dialog>


    <p:dialog id="idDialogExamPracticoProfessor"
              widgetVar="dialogExamPracticoProfesor"
              minWidth="500"
              visible="false">
        <p:dataTable lazy="true" paginator="true" rows="5"
                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                     id='idTableExamPracticoProfesor' value="#{dgtPracticoController.practicoProfesorList}" var="profesorvar">
            <p:column headerText="Nif">
                #{profesorvar.nif}
            </p:column>
            <p:column headerText="Nombres">
                #{profesorvar.nombres}
            </p:column>
            <p:column headerText="Apellidos">
                #{profesorvar.apellidos}
            </p:column>
            <p:column headerText="Telefono">
                #{profesorvar.telefono}
            </p:column>
            <p:column headerText="Accion">
                <p:commandLink value="Seleccionar"
                               onclick="dialogExamPracticoProfesor.hide();"
                               process="@this"
                               actionListener="#{dgtPracticoController.onRowSelectExamProfesor(profesorvar)}"
                               update=":formgdt:tabViewgdt:idPracticoExamProfesor"  >
                </p:commandLink>
            </p:column>
        </p:dataTable>
    </p:dialog>

    <p:dialog id="idDialogPracticoVehiculo"
              widgetVar="dialogPracticoVehiculo"
              minWidth="500"
              visible="false">
        <p:dataTable id='idTablePracticoVehiculo' lazy="true" paginator="true" rows="5"
                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                     value="#{dgtPracticoController.vehiculoList}" var="vehiculovar">
            <p:column headerText="Matricula">
                #{vehiculovar.matricula}
            </p:column>
            <p:column headerText="Kilometro">
                #{vehiculovar.km}
            </p:column>
            <p:column headerText="fecha revision">
                #{dgtPracticoController.formatFecha(vehiculovar.fecharevision)}
            </p:column>
            <p:column headerText="Fecha itv">
                #{dgtPracticoController.formatFecha(vehiculovar.fechaitv)}
            </p:column>
            <p:column headerText="Accion">
                <p:commandLink value="Seleccionar"
                               onclick="dialogPracticoVehiculo.hide();"
                               process="@this"
                               actionListener="#{dgtPracticoController.onRowSelectVehiculo(vehiculovar)}"
                               update=":formgdt:tabViewgdt:idPracticoExamVehiculo"  >
                </p:commandLink>
            </p:column>
        </p:dataTable>
    </p:dialog>

    <p:dialog id="idExamPracticoAlumnoDialog"
              widgetVar="varExamPracticoAlumnoDialog"
              minWidth="500"
              visible="false">

        <p:dataTable lazy="true" paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                     id='idExamPracticoAlumnoTable' value="#{dgtPracticoController.listAlumno}" var="alumnovar">
            <p:column headerText="Nif">
                #{alumnovar.nif}
            </p:column>
            <p:column headerText="Nombres">
                #{alumnovar.nombres}
            </p:column>
            <p:column headerText="Apellidos">
                #{alumnovar.apellidos}
            </p:column>
            <p:column headerText="Telefono">
                #{alumnovar.telefono}
            </p:column>
            <p:column headerText="Accion">
                <p:commandLink value="Seleccionar"
                               oncomplete="varExamPracticoAlumnoDialog.hide();"
                               process="@this"
                               actionListener="#{dgtPracticoController.onRowSelectAlumno(alumnovar)}"
                               update=":formgdt:tabViewgdt:idExamPracticoAlumnoPanel"  >
                </p:commandLink>
            </p:column>
        </p:dataTable>
    </p:dialog>


</ui:composition>